package com.xiaojianhx.demo.algorithm.sort;

import com.xiaojianhx.demo.algorithm.utils.Utils;

/**
 * Algorithm Sort 01 BubbleSort
 * 
 * @author xiaojianhx
 * @version V1.0.0 $ 2021-04-18 23:47:23 init ---- xiaojianhx
 */
public class Algorithm_Sort_01_BubbleSort {

    // 循环次数：
    // 1 -> 0
    // 2 -> 1
    // 3 -> 3
    // 4 -> 6
    // 5 -> 10
    // 6 -> 15
    // 7 -> 21
    // 8 -> 28
    // 9 -> 36
    // 10 -> 45
    // 11 -> 55
    // 12 -> 66
    public static void sort(int[] a) {

        for (var i = 0; i < a.length - 1; i++) {
            for (var j = 0; j < a.length - i - 1; j++) {
                if (a[j] > a[j + 1]) {
                    var t = a[j];
                    a[j] = a[j + 1];
                    a[j + 1] = t;
                }
            }
            Utils.print(a);
        }
    }
}